This disclosure relates to the world of digital media content processing. More particularly, the present invention includes a system and method for improving the concurrent reproduction capabilities of integrated digital media players.
For all but a small minority of marketplace products, digital audio reproduction has replaced its predecessor—analog audio reproduction. This is understandable because music (and all audio production) in digitally recorded form is easier to create, edit, transport, share, deliver, manipulate and preserve.
And yet, with all the apparent advantages provided by the digital media revolution, there is at least one highly-desirable feature that is missing from known media player implementations: the ability for the system, or controlling device, to automatically calculate and execute optimally-timed concurrent (i.e., overlapping) or, where appropriate, adjoined (i.e., closely aligned or abutted) audio transitions.
The present invention has solved that technical challenge, and it is different from the automatic digital media sound mixing and presentation techniques used in the prior art which can generally be classified as examples of two categories: A) expensive software and hardware products marketed to commercial broadcast entities, and B) relatively inexpensive software solutions widely available to a broad spectrum of computing devices, portable music players, and other digital media player capable devices.
For example, in category A, there are broadcast automation products that can perform concurrently overlapping and concurrently adjoined audio output (e.g., music stream) presentations. Well known names include NexGen Digital®, Audio Vault®, iMedia Touch and Enco. However these concurrent overlapping or adjoined media file presentation systems generally need some form of administrative preparation. In other words, these products do not automatically calculate each media file's optimum creative content duration.
For instance, in these professional-grade products, the database record connected with each song's media file must somehow contain a user submitted value, or user action-extrapolated value, that designates the desired duration for the creative content portion of each song. Tracks (i.e., audio files) in these systems may need an associated data file that stores their key timing information, and the data file is generally created when a user takes some type of action related to the timing specification for each system media file.
Such elaborate automation software may include other methods of song-specific timing designation. Administrative users might be required to insert digital markers that specify where a song should end, or where a fade should begin, in order to trigger the next play event. In some cases, the software may permit the administrative user to arrange sequential waveforms in an overlapping manner to “fine-tune” the transition, but this also mandates user intervention. In other scenarios, the desired duration is programmed as a byproduct of the media file upload process with the audible duration determined when the operator decides to fade or conclude a song via user interface or hardware controls.
Consequently, all known implementations require some form of administrative (i.e., operator) intervention in order to determine the specified content duration of each media file included in a transition. This means that professional-grade mixing (i.e., media file transition) designs can only provide fully automated transitions after an optimal duration (i.e., reproduction interval) is evaluated for, and specifically assigned to, each concerned media file.
Obviously, preparing thousands of digital audio media files for compatibility with such a system would be a labor-intensive task. Therefore, these types of broadcast automation implementations are not truly “automatic” because they cannot create optimally-timed transitions without first requiring some degree of user intervention. This is different from improvements in the disclosed invention which calculate and execute optimally-timed transitions with no user intervention, and do not require media file preparation for compatibility with the system.
An explanation of an automatically implemented “cross fade” transition will be essential to the reader's understanding of the improvements the invention provides over the prior art. The cross fade is a transition technique widely available in as many as fifty digital media file mixing products—marketed in the form of software, hardware, or a combination of software and hardware products; and forms possibly including integrated logic circuits. Many or most of these mixing solutions use technology furnished and owned by two prominent software developers—Microsoft® Corporation and Apple®, Inc.
The following description demonstrates how Microsoft publicly defines its media player cross fade feature:
“Create smooth transitions between songs with crossfading. With Windows Media Player, you can create gradual transitions between songs in your playlists by turning on crossfading. When you do so, the volume at the end of one song fades out and gradually goes down while the volume of the next song fades in and gradually goes up. Crossfading is available only when you play Windows Media Audio (WMA) or MP3 files that are either in your library or on a data or HighMAT CD. Crossfading is not available with audio CDs.”
Source: This instructional excerpt was retrieved as part of a research endeavor by the inventor which located the information in July of 2011 at this Microsoft Web address: http://windows.microsoft.com/en-US/windows-vista/Create-smooth-transitions-between-songs-with-crossfading(.)
Digital media file cross fades (or, in Microsoft parlance, “crossfading”) are explained generally as a fade out of one song, and a fade in of the next song. Evaluation of the Microsoft technology, using an assortment of pop music digital media files, has demonstrated that their description is accurate.
Unfortunately, a cross fade does not typically present the media file creative content in the manner conceived and recorded by the original artists. We know this to be true because while many, but not all, songs (i.e., recordings) are produced with a gradual fade ending, almost no songs are produced with a starting audio section that gradually fades in. (One well-known exception can be recognized by listening to the 1964 Beatles recording entitled “Eight Days A Week”. However such exceptions are rare.)
Therefore, it may certainly be logical to conclude that automatic software-executed cross fades, while interesting in cases where they may serve to reduce the audible gap between consecutive media file reproduction, are not fully faithful to the sound design implementation of their corresponding artists. In that sense, this type of digital media file cross fade implementations may be considered as contributing to or producing an unnatural transition. As will be explained, the present invention utilizes either overlapping transitions, or adjoined transitions, in order to overcome the limitations of cross fade technology in the prior art.
With regard to category B prior art in the form of so-called “automix” (i.e., automatic mixing) implementations usually configured for distribution to consumer and “prosumer” markets, and including computing-device enabled media players or “digital DJ” style media player applications (i.e., software products), all known solutions implement media file transitions with varying degrees of a “cross fade” (i.e., the gradual fade out of the audio level for a first media file, followed closely by the gradual fade in of the audio level for a second media file). Additionally, adjoined presentation for content that ends cold (i.e., abruptly) and starts cold is increasingly problematic. DSP (digital signal processing) cross fade performance will vary depending on the sound design of the content. During automix cross fade executions, different solutions from different vendors provide less than ideal conformity with the artistic intent of the digital media file audio creator.
For instance, most popular music recordings are not designed and recorded to start with a gradual audio level increase (i.e., fade in). And many popular music recordings are deliberately recorded with a cold (i.e., abrupt) ending on a music note or with a sustained vocal heard at full audio level. Artists who have designed their audio content to end cold did not conceive of its presentation as concluding with a premature level reduction (i.e., early fade out). Therefore, forced “fade outs” and unintended “fade ins” make unnatural changes to the artistic intent of the music creator. This fade out then fade in effect is particularly undesirable for presentation of adjoined audio recordings where a first media file ends cold and a second media file starts cold.
But, in every evaluated automix-style implementation, cross fade transitions were not able to produce concurrently overlapping media file transitions. Instead, automatically executed cross fade transition products typically create an unnatural “V-notch” effect (i.e., fade down, then fade up) in the audio levels of consecutively presented (i.e., reproduced as in rendered) media files. This means that most transition instances created with cross fade automix implementations tend to cause a premature fade (i.e., gradual level reduction) of the first media file, while also causing an unnatural fade in (i.e., gradual level increase) of the second media file.
Commonly available automix cross fade transition solutions are executed within a single media player object (i.e., as a software instantiated media player or perhaps as a hardware device) by a mechanism that utilizes DSP (digital signal processing). DSP analyzes physical properties of each song (i.e., media file recording embodiment) such as, for example, a waveform, and combines or establishes interval of content boundaries from each discrete media file; and then determines a projected transition point that is located at or near the end of a first media file, while also at or near the start of a second media file.
These DSP cross fade implementations almost always produce the aforementioned undesirable level dip effects. Further, since most DSP-controlled automatic transitions execute utilizing a playlist contained in one media player with the intervals of the concerned first media and second media files calculated by a processor, the transitions are encumbered with a processing overhead factor. This means the transition point execution is achieved after a requirement for considerable CPU cycles and computation time, and as a result, last second media file substitutions are not possible.
For example, utilizing an automix-style DSP mode (which is generally a user-activated optional feature), if a user chooses to manually activate the next transition event, the audio output of the first media file will immediately stop, and the audio output of the second media file will start. With this design, the transition is abrupt because there is no fading or blending of any kind. This is different from the disclosed invention which permits activation of manual transitions while not “dumping” (i.e., truncating) reproduction of the first media file. Instead, the systems and methods of the present invention preserve and execute blended fade effects in both automated and manually activated transitions.
Additionally, DSP transitions that are executed utilizing the playlist content of one media player require the process to have an awareness of certain properties of each media file. In other words, with DSP, the media files are linked by an evaluation process. This is different from the present invention where media files are retrieved from an independent playlist container object, and then reproduced in independent media players that require no awareness or evaluation of any other player's content.
It is true that there are many digital DJ style music mixing products that offer concurrently overlapping or concurrently adjoined song (i.e., media file) transitions, however to provide concurrently overlapping or concurrently adjoined transitions these products require a human operator to manually determine when to initiate the changeover from a first media file to a second media file, and then to manually activate the transition. Most of these manually triggered implementations also incorporate an optional form of so-called automatic DSP cross fade transition capability, but it has the limitations identified in the previous paragraphs.